home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / AMIGA / AMICUS / AMICUS25.ADF / MailList / mlist.doc < prev    next >
Text File  |  1989-01-26  |  13KB  |  304 lines

  1.  
  2.               Documentation for MLIST Version 1.0, October 8, 1987
  3.  
  4.                      Copyright (c) 1987 Michael W. Paul
  5.                      
  6.                 FOR GOD'S SAKE (and your own) BACK UP YOUR DATA!
  7.  
  8. This program can be passed around freely, as long as my name is still in the
  9. documentation.  While not exactly Public Domain, and not precisely ShareWare,
  10. anybody can have it, and nobody HAS to pay me for it. (But I'd like them to!)
  11.  
  12. Despite testing on my part, there may be BUGS! in this program.  Be warned.
  13.  
  14. Also be warned that, except for a year-old Amiga and a four-year-old Colt
  15. hatchback, I haven't got anything valuable.  Don't sue me if you get lots
  16. of data in your files, forget to back it up, and lose it due to some bug
  17. I didn't find.
  18.  
  19. (* *) <--  Chapter # - Search for the chapter number, if you want to locate
  20.                        it fast.  TxEd is great for this.
  21.  
  22. --------------------------
  23.  
  24. (*1*)  Installation - After UnARCing, how to set it up.
  25.  
  26. (*2*)  MLIST - command line options, etc.
  27.  
  28. (*3*)  Getting started - Setting up your key system, and how the program
  29.                          works...
  30.  
  31. (*4*)  Labels - A very short chapter, better covered in HELP in program.
  32.  
  33. (*5*)  Customizing colors - In case blue isn't YOUR favorite color.
  34.  
  35. (*6*)  Expansion - MLIST is the first module of a mailing "system".
  36.  
  37. (*7*)  Pitch for funding - the "secret" features will be revealed...
  38.                    
  39. --------------------------
  40.  
  41. (*1*)  Installation
  42.  
  43.     The MLIST arc will contain MLIST, MLIST.DOC (you're reading it), READ.ME,
  44. PAIATT, and PNLCOLORS.  
  45.  
  46.     The MLIST program should be placed in the C directory of whatever
  47. Workbench disk you plan to use.  I KNOW it's huge, but all the really good
  48. stuff is. B^)
  49.  
  50.     PAIATT and PNLCOLORS are special.  They are the color files that 
  51. determine what the program looks like.  (Changing them is detailed later.)
  52. They require that you ASSIGN a device named PANEL: somewhere, and put them
  53. in it.
  54.  
  55.     It can be as simple as ASSIGN PANEL: DF0:
  56.           or as complex as ASSIGN PANEL: DH0:mlistsupport/colors
  57. But you HAVE to ASSIGN the PANEL: somewhere, and put those 2 files in it,
  58. or the program won't work right.
  59.  
  60. --------------------------
  61.  
  62. (*2*)  MLIST command line options.
  63.  
  64.     MLIST has a maximum of 3 command line options.  You don't NEED to use
  65. any of them to get the program to work.  They are mostly for speed of 
  66. operation and multi-disk data storage.
  67.  
  68.        MLIST [source] ['m'] [alt. RAM:]
  69.  
  70.           [source] - a device or directory where the MLIST data and index
  71.                      files are to be found at startup.  If they aren't there,
  72.                      new ones will be created, and then stored there when
  73.                      the program ends.  If no [source] is supplied, they
  74.                      are loaded/saved from/to the current directory.
  75.           
  76.           ['m'] - an 'm' indicates that, after locating the data and index
  77.                 files, they should be moved to RAM: for operation.  
  78.                 IF YOU HAVE ENOUGH RAM, THIS IS THE WAY YOU SHOULD USE MLIST!
  79.                 Hard disk users may not bother, but floppy folks will find
  80.                 that MLIST isn't exactly a speed-demon.  And   
  81.                 floppy-accelerators like FACC will only help once enough of
  82.                 the records have been read into the buffers.
  83.                 
  84.           [alt. RAM:] - (MUST be preceeded by 'm'!) This option renames the
  85.                         memory device that 'm' uses to whatever you want.
  86.                         VD0: and VDK: are two examples I can think of, so that
  87.                         if one of your OTHER PROGRAMS Guru's out, the data
  88.                         and index files won't disintegrate.
  89.                         
  90.     Examples:
  91.  
  92.         MLIST 
  93.               Basic operation.  Files in current directory.
  94.               
  95.         MLIST DF1: m
  96.               Find files on DF1:, move them to RAM: for operation, flush
  97.               updated files back to DF1: when done.
  98.               
  99.         MLIST DF1:mlistdata/ m VD0:
  100.               Find files in DF1:mlistdata (NOTE '/': A directory name MUST
  101.               end with '/'!), move to recoverable RAM disk VD0:, and
  102.               return them to DF1:mlistdata when done.
  103.               
  104.     A couple of notes on memory device useage.
  105.     ------------------------------------------
  106.     
  107.     The memory device files are NOT erased when closed down.  Throw them away
  108. when you no longer need them.
  109.  
  110.     If you use a recoverable memory device, and have a crash while updating
  111. your data, DON'T JUST START THE PROGRAM BACK UP!  Use MLIST VD0: (or whatever
  112. device it was) to see if they are corrupt.  If they are good, copy them back 
  113. to where you got them from with the DOS COPY command.  If they died in the 
  114. crash, you'll have to re-start and re-edit using the original files.  I write
  115. the data to the files on every update, so the files SHOULDN'T be corrupt
  116. unless the Guru strikes in mid-write.  (This goes for real disk files, too.)
  117.  
  118. --------------------------
  119.  
  120. (*3*)  Getting started - how the program works.
  121.  
  122.     First, let's talk KEY's.  You have a 25-character KEY field to work with.
  123. You'll notice that there are numbers over the field.  These will allow you
  124. to line-up your KEY properly, once you decide its layout.
  125.  
  126.    The easy way out of this is to use the example I set up for the users
  127. group I (somehow) got elected president of.  All I needed was the member's
  128. name, so I decided that the first 10 characters would be the last name,
  129. followed by the first.
  130.  
  131.    My KEY in that file is as follows:
  132.  
  133.                1234567890123456789012345
  134.                PAUL      MICHAEL
  135.                
  136.    You'll notice that the KEY's are forced to be upper-case.  I decided that
  137. this would be the best way to handle things, since 'paul      michael' 
  138. wouldn't match 'PAUL      MICHAEL' using the standard C strcmp() function,
  139. and since I'd have to force a conversion to upper-case anyway I'd let
  140. the PANEL screen utility take care of it for me.
  141.  
  142.     You'll also notice that when you type in the KEY field, anything that was
  143. left over from a previous key is erased.  To avoid this, use the cursor keys
  144. to move in field before typing.
  145.  
  146.    Remember, KEY design will make or break your database.
  147.    
  148.    Next, let's talk data.  The blue (unless you change the color) fields are
  149. hilighted that way so you can see how long they are.  The first 8 are simply
  150. for the address data.  Fill them in as you wish.  The active field is always
  151. black while the cursor is in it.
  152.  
  153.    One trick: if the field begins with one or more spaces, it will not 
  154. appear on any label you print.  This way, you can put the person's phone
  155. number in the data file, but not on their mail.  You have 3 address lines,
  156. and they all take up space in the file even if blank, so use them up!
  157.  
  158.    The last 2 are special.  You may or may not use them, but they'll make
  159. sub-dividing the mailing list easier if you do.
  160.    
  161.    AMOUNT is a dollars-and-cents field.  It only accepts numeric data, like
  162. numbers, '-', and '.'.  MLIST only cares whether or not it is ZERO (I have
  163. told PANEL that ZERO AMOUNT's should be blank instead of '0.00', for easier
  164. comparison.)  This way you can run-off labels to send to folks who owe you
  165. money.
  166.  
  167.    EXTRA is an upper-case-only field that, if used, can identify the record
  168. for an exact-match search when printing labels.  My Fairfield County Amiga
  169. Users Group (FCAUG) mailing list has to EXTRA's: 'FCAUG' for full members,
  170. 'GUEST' for anyone whose name we have but who hasn't officially joined.
  171. This way we can send newsletters to members, sign-up letters to guests,
  172. and meeting notices to everyone, without a lot of effort.
  173.  
  174.     The use of these fields is further explained in the label section.
  175.  
  176.     Now for keys used to run the program:
  177.     
  178.     ESC - the ESC (escape) key is used 2 different ways.  While in the KEY
  179.           field, pressing ESC ends the program.  While editing a record,
  180.           ESC will end editing, and write the changed data to the file.
  181.  
  182.     F1 - Function key 1 will add a new record to the file, or edit an old one,
  183.          depending on whether the key in the KEY field is or isn't already
  184.          in the file.  Adding a record calls up a 'confirmation' field, and
  185.          the 'Y' key must be pressed before the key is added.  Pressing any
  186.          other key cancels the add operation.  The new record is initialized
  187.          to blanks, and the screen fields are erased.
  188.          
  189.     F3 - Function key 3 begins the label print operation.  See that section
  190.          for details.
  191.          
  192.     F4 - Function key 4 cancels an edit operation, and restores the screen
  193.          with a re-read of the data in the file.  If you cancel a newly-added
  194.          record, it will be restored to blanks.  You must delete any unwanted
  195.          records using F5.  This key is only used while editing.
  196.          
  197.     F5 - Function key 5 deletes a record from the file.  You must confirm any
  198.          delete by entering a 'Y' when asked.
  199.          
  200.     Cursor keys
  201.     -----------
  202.     
  203.     Up arrow - While editing, moves to previous field on screen in an upwards
  204.                direction.
  205.                While not editing, calls up the previous record in the file,
  206.                based on the contents of the KEY field.  A blank KEY will get
  207.                the first record in the file.
  208.                
  209.     Down arrow - exact opposite of Up arrow.  Editing: next field.  
  210.                                           Not Editing: next record.
  211.                                           (Blank still gives first record.)
  212.                                           
  213.     Other keys that do stuff
  214.     ------------------------
  215.     (These are editing keys programmed by the PANEL screen interface, so
  216.      don't blame me if it's hard to remember what they do. HELP is available.)
  217.      
  218.     F6 - Insert spaces into field, shoving rest over.  Works anywhere in field.
  219.     
  220.     F7 - Insert line.  Only works in first position of field.  Effectively
  221.                        erases the field.
  222.     
  223.     F8 - Delete line.       ''        ''        ''        ''
  224.     
  225.     F9 - Erase line.  Works anywhere in field.  Erases to end.
  226.     
  227.     F10 - Jump to beginning of field.  Flashes screen if already there.
  228.     
  229.     TAB - Skip to next word in field; back to first position if at last word.
  230.     
  231.     Left and Right arrows - Non-destructive movement in field.  If cursor
  232.                             leaves edge of field, the field that is next in
  233.                             that direction will become hilighted.
  234.                             
  235.                             
  236. --------------------------
  237.  
  238. (*4*)  Labels - why this program exists.
  239.  
  240.     Really short chapter here.  Get some 3-1/2 x 15/16", single width labels
  241. (I used some from Reliable.)  Put them in the printer.  Press the F3 key.
  242. Select one of the catagories to print.  Print a dummy label or two, to make 
  243. sure the labels are lined up.  Select 'Print', and let 'er rip.
  244.  
  245.     The menu that you find in the labels section is really simple.  Using the
  246. UP and DOWN ARROWS, highlight the selection you want, and hit RETURN.
  247.  
  248. --------------------------
  249.  
  250. (*5*)  Customizing colors.
  251.  
  252.     There are 2 files you needed to move to a device/directory named PANEL:.
  253. They were PAIATT and PNLCOLORS.
  254.     
  255.     PNLCOLORS is a set of 8 RGB values.  They are the 8 colors that MLIST
  256. uses.  Change these values to whatever colors you want, but be warned that
  257. it took a while to come up with the colors that make MLIST the colorful
  258. wonder that it is.  
  259.  
  260.     PAIATT is a file of 16 combinations of colors.  Each pair of numbers is
  261. a foreground/background combination.  If you fool around with this file,
  262. back it up first.  The combinations you come up with may not look good.
  263.  
  264. --------------------------
  265.  
  266. (*6*)  Expansion.
  267.  
  268.     As soon as I get a chance, the letter generator will be written.  This
  269. will allow whole letters to be printed, using information taken from the 
  270. data file.  Conditional printing, similar to the label printing, will allow
  271. whole sections of the letter to be included/excluded.
  272.  
  273.     Once this module is completed, future expansion of the system will be
  274. based on customer (that's you!) suggestions/complaints.  And speaking of
  275. input...
  276.  
  277. --------------------------
  278.  
  279. (*7*)  Contributing, and a reason why you should...
  280.  
  281.     All I want is $5 (FIVE DOLLARS).  Nobody has to pay more than that, no
  282. matter how big or small the organization using it is.
  283.  
  284.     The way I figure it, if you can't afford $5, I don't want to bother you.
  285.     
  286.     And those who send in money will get the REST of the documentation.  
  287.     
  288.     The program works fine as-is.  But there are more features, hidden until
  289. I reveal how they are accessed.  Such as printing out ALL the fields, 
  290. including the KEYs, AMOUNTs, and EXTRAs.  Or putting the AMOUNT on the label,
  291. to tell the addressee how much he owes.
  292.  
  293.     I hate to do this sort of thing, but I feel I need a gimick to get folks
  294. to send in money.
  295.  
  296. --------------------------
  297.  
  298. Michael Paul
  299. Box 9222
  300. New Haven, CT 06533-0222
  301. (See the dummy labels...)
  302.  
  303. Custom programming available...
  304.